Multi source and destination media discovery and management platform

ABSTRACT

A platform allows viewing and sorting digital media from multiple content sources across multiple devices by title, category, series, or other sorting desired. Available content from providers may be co-mixed to display as if from a single provider. Listings may be restricted to specific providers or sets of providers, such as removing providers with paid content which the user will not access. Alternatively, listings may be prioritized based on business rules programmed into the system. Listings may be limited to those available on the current device, on another set of devices, or on all devices. Control of access to content, including playback and queuing, may be done through the interface regardless of the consumption device. This allows access to all content across all devices in a fashion desirable to the user, merging providers and devices into a seamless interface tailored for the user instead of the content or device manufacturer.

PRIORITY CLAIM

This application claims benefit under 35 U.S.C. §120 as a Continuationof application Ser. No. 13/415,584, filed Mar. 8, 2012, the entirecontents of which is hereby incorporated by reference as if fully setforth herein. Application Ser. No. 13/415,584 claims priority from U.S.provisional patent application Ser. No. 61/450,472, filed Mar. 8, 2011,titled “MULTI SOURCE AND DESTINATION MEDIA DISCOVERY AND MANAGEMENTPLATFORM,” and from U.S. provisional patent application Ser. No.61/559,782, filed Nov. 15, 2011, titled “MULTI SOURCE AND DESTINATIONMEDIA DISCOVERY AND MANAGEMENT PLATFORM.” Applicant hereby rescinds anydisclaimer of claim scope in the parent application(s) or theprosecution history thereof and advise the USPTO that the claims in thisapplication may be broader than any claim in the parent application(s).

COPYRIGHT NOTICE

A portion of the disclosure of this patent document contains materialthat is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction by anyone of the patent documentor the patent disclosure, as it appears in the Patent and TrademarkOffice patent file or records, but otherwise reserves all copyrightrights whatsoever. Copyright 2012, ZeeVee, Inc.

TECHNICAL FIELD

This disclosure relates to the field of digital media, and morespecifically to listing and selecting digital media from multiplecontent providers and multiple content sources for multiple devices.

BACKGROUND

As the Internet has expanded and bandwidth to homes increased, a demandfor digital media, and especially video content, has grown. YouTubedeveloped into a platform for sharing video. Traditional televisionnetworks began streaming content via the Internet. Video rentalagencies, such as Blockbuster, began offering online access to content.With the expansion of video capabilities and bandwidth to mobile deviceslike smartphones, demand for digital media continues to grow. Manysolutions have developed, driven mainly by each content providerproducing ways to access its content, and devices developingdevice-specific interfaces to access content.

In addition to devices for accessing content, there are also manydevices for sending digital media to a television. Examples of suchdevices include AppleTV, Boxee Box, Logitech Revue, Roku, and TiVoPremiere. Yet each different device supports access to video fromdifferent sets of content providers. For example, AppleTV supports videofrom Netflix, iTunes, and YouTube. Boxee Box supports video fromYouTube, ABC.com, FOX.com, NBC.com, CBS.com, MLB.com, and soon will addsupport for Netflix. Logitech Revue supports video from Netflix, AmazonVideo on Demand (VoD), iTunes, and YouTube. Roku supports video fromHulu Plus, Netflix, Amazon VoD, iTunes, and MLB.com. TiVo Premiersupports video from Hulu Plus, Netflix, Amazon VoD, and YouTube. Sometelevisions have built-in support for access to video in a mannersimilar to these devices.

Other devices for accessing content, such as Verizon FiOS DVRs, mayaccess specific and singular video sources, such as Verizon FiOSOnDemand. Computer desktops or laptops may have full access to all videosources. Other computing devices, including mobile devices such asmobile phones or iPads, may have alternative support. The iPad, forexample, has browser-based access to the web but no Adobe Flash support.Video access is available from the iPad through iTunes, for example, butnot through Amazon VoD.

This creates a dilemma for users who have many devices for accessingdifferent subsets of video from different content providers. Furthercomplicating matters, the interfaces for accessing content are highlycontrolled by the content providers. Access to content is typicallydriven through hierarchical menus populated based on information feedsprovided by the content providers. On a device that provides access tomultiple content providers, a user must first select a content provider,rather than browsing by type of content. After selecting the contentprovider, further categories are defined and controlled by the contentprovider. Thus, a show available from multiple content providers may becategorized differently—such as under “Family” from one contentprovider, “Comedy” from another content provider, “HD” from a thirdcontent provider, and “F” from a fourth content provider.

Typed searches may find the same show from all content providers, yetstill separate from each other. For example, searching for “Family Guy”may produce separate results—“Family Guy” through Netflix, “Family Guy”through Amazon VoD, and “Family Guy” through Hulu. Another device mightinstead return “Family Guy” through Fox.com. Additionally, the searchmight not find all results due to inconsistencies between metadata keptby each provider. Although the same exact content may be available frommultiple providers, the metadata kept often differs between providers oris incomplete. For example:

-   -   Titles are not unique. There are over 20 different movies titled        “Alice in Wonderland.” There are three different TV series        titled “Top Gear”.    -   Release years are not distinctive. Some sources list the theater        release date, others the DVD release date, others the online        release date, and others provide no date at all.    -   Descriptions vary greatly. Different providers often have        completely different descriptions for the same movie.    -   Episode numbers are not distinctive. Some series, such as news        programs, have no episode numbers. Sometimes, episode numbers        are repeated. For example, “Dancing with the Stars Week 7” and        “Dancing with the Stars Week 7 Results” are two distinct        episodes, but might both be listed as season 5 episode 7.    -   Often there are different versions available. Sometimes, it is a        simple “Director's Cut” or “Unrated Version.” Other times, the        durations, release years, and even titles will vary. “Star Wars”        released in 1977 is the same movie as “Star Wars Episode IV: A        New Hope” released in 1997.    -   Remakes and rereleases are very hard to distinguish. For        example, “Bladerunner,” released in 1982, with a duration of 113        minutes, is a special version of the movie “Bladerunner,”        released in 2007, with a duration of 117 minutes. On the other        hand, “Ocean's Eleven,” released in 1960, with a duration of 127        minutes, is not the same movie as “Ocean's Eleven,” released in        2001, with a duration of 117 minutes. In both cases, the        descriptions between the versions are similar.    -   Data is often wrong. Its common for episode numbers, season        numbers, release years, and other data to be just plain        incorrect. Misspellings are very common.    -   Formatting is often inconsistent. “The Fifth Element” and “The        5th Element” are both correct, but different. “Star Trek 4” and        “Star Trek IV” are both correct as well.    -   Inconsistent taxonomies. Each provider uses a different set of        genres and keywords to describe their content; “Drama,”        “Afro-Pop,” “Romance,” etc.

Selecting a specific content provider from the results may reduce thisproblem of metadata consistency, but limits the results to thoseavailable through that specific content provider. From the standpoint ofa content provider, such a design is desirable because it keeps usersusing only one content provider's content. Each content provider wantsto keep users within the content provider's available content, as it isaccess to such content that drives profits for each individual contentprovider. Device manufacturers need agreements with content providers inorder to have access to content, Application Programming Interfaces(APIs), and encryption specific to each content provider. Thus (alsofrom the standpoint of a device manufacturer) such a design is desirablebecause it keeps content providers happy and willing to work with thedevice manufacturer. This is also the simplest solution for devicemanufacturers, as device manufacturers can take content informationdirectly from each content provider and display the content informationwithout introducing further complexities.

In addition to sorting available content by content provider, availablecontent listings are inherently linked to the viewing device. Forexample, a network-connected TV or DVR lists content viewable on thatdevice. As the focus of devices is accessibility within that device todrive future device sales, the incentive is to display only contentaccessible and displayable on that device.

This creates an array of products which do not fully cross-integrate. Nosolution provides a platform that (1) lists available media acrossdifferent content providers; (2) groups the media based on the endproduct information, rather than source feed structure; (3) lists mediaavailability across all devices; and (4) allows control and selectionfrom one device of any available media to play back on any availabledevice. Furthermore, no ability exists for a content provider to programin business rules regarding the proffered choice of media for a userbased on their own business desires.

BRIEF SUMMARY OF THE INVENTION

A platform is disclosed which allows viewing and sorting digital mediafrom multiple content sources (including, but not limited to, Internettelevision, personal content including on local computers,video-on-demand (VOD) services, and linear television) for multipledevices by title, category, series name, or other sorting as desired bya user. Content from multiple content providers may be co-mixed tologically display to the user as if it were from a single contentprovider. Content listings may be reduced or tailored based on specificcontent providers or sets of content providers as desired by the user,such as removing content providers with paid content which the userchooses not to access. Content listings may be limited to thoseavailable on the current device, on another single or set of devices, oron all devices. Control of access to content, including playback andqueuing, may be done through the interface regardless of the desiredconsumption device. This allows users to access all available contentacross all available devices in a fashion desirable to the user, mergingcontent providers and devices into a seamless interface tailored to theindividual user instead of to the content provide or devicemanufacturer.

In another embodiment, listings are prioritized based on business rulesthat are programmed into the system, potentially prioritizing one sourceof content over another. Media recommendations may also be provided tousers based upon the same set of factors.

BRIEF DESCRIPTION OF THE DRAWINGS

In the drawings, closely related figures and items have the same numberbut different alphabetic suffixes. Processes, states, statuses, anddatabases are named for their respective functions.

FIG. 1 is a full system diagram.

FIG. 2 is a flowchart of the process of collecting content metadata andpresenting content listings.

FIG. 3 is an example user interface showing user account configurationincluding selection of paid content providers to integrate into contentlistings.

FIG. 4 is an example user interface showing search and different ways toview content.

FIG. 5 is an example user interface showing shows, categories, andcontent providers as different sorting options.

FIG. 6 is an example user interface showing content listed by showseries.

FIG. 7 is an example user interface showing selection of a specificseries with individual episodes accessible from different contentproviders.

FIG. 8 is another example user interface showing search and differentways to view content including live content and local content.

FIG. 9 is an example user interface showing search results with a pop-upoption to configure content providers.

FIG. 10 is an example user interface showing selection of a specificseries with individual episodes accessible from different contentproviders, and a filter popup selected to choose between showing allcontent providers or showing all free or subscribed content providers.

FIG. 11 is the example user interface of FIG. 10 with a filter popupselected to limit content to displayable on specific devices.

FIG. 12 is the example user interface of FIG. 11 with iOS devicesselected.

FIG. 13 is the example user interface of FIG. 11 with MAC computerdevices selected.

FIG. 14 is an example user interface with a specific single episodeselected.

FIG. 15 is an example user interface viewing favorites.

FIG. 16 is an example user interface showing results after browsing tothe Kids section.

FIG. 17 is an example user interface showing series listings displayed.

FIG. 18 is the example user interface of FIG. 17 with one seriesactivated via mouse-over.

FIG. 19 is the example user interface of FIG. 17 with a search termapplied to the listed results.

FIG. 20 is an example user interface showing movie listings displayed.

FIG. 21 is an example user interface showing live listings displayed.

FIG. 22 is the example user interface of FIG. 21 showing newprogramming.

FIG. 23 is the example user interface of FIG. 21 showing new sportsprogramming.

FIG. 24 is an example user interface showing local content.

FIG. 25 is an example user interface organized for display on atelevision.

FIG. 26 shows a input box useful for search within a user interface suchas shown in FIG. 25.

FIG. 27 shows an administrator interface for identifying matched content

FIGS. 28 and 29 show an administrator interface for editing storedmetadata about content.

FIG. 30 shows and administrator interface to specify correlation rulesfor specific shows or other groups of content.

FIG. 31 shows an administrator interface to configure priorities ofsources to use for metadata displayed about content.

FIG. 32 shows a user interface collecting content for sequentialplayback.

DETAILED DESCRIPTION OF THE INVENTION

1.0. Terminology

The terminology and definitions of the prior art are not necessarilyconsistent with the terminology and definitions of the currentinvention. Where there is a conflict, the following definitions apply.

access provider—entity providing video feed and/or internet to a user oruser household, for example Comcast, Cablevision, or Verizon.

analog media—Media (including, but not limited to, audio, video, text,and applications) that is encoded, stored, and/or transmitted in analogformat.

business rules—configuration settings that apply to available contentlistings and user interface appearance presented to users through aspecific access provider

Content—Analog media and/or digital media.

content listing—content metadata for display to a user.

content metadata—Details about a content including, but not limited to,creation date, length/duration, rating, and description.

content provider—An individual or entity, such as a broadcast or cableTV network, that provides content. Content provider examples includeABC, CBS, NBC, FOX, YouTube, NetFlix, and iTunes.

content source—From a user's perspective, a way to get content; or athing (such as a computer, server, or device) that stores and/ortransmits content. content source examples include linear television,video-on-demand (VOD) services, Internet television, DVD players, DVRs,local computers, and remote computers.

Device—A thing that is capable of outputting (including, but not limitedto, playing, displaying, and exporting) digital media.

digital media—Media (including, but not limited to, audio, video, text,and applications) that is encoded, stored, and/or transmitted in digitalformat.

Internet Radio—Distribution of radio content via the Internet.

Internet Television—Distribution of television content via the Internet.

linear television—Television content available to a user at a specifictime and on a particular channel or website. Linear television includesbroadcast (over-the-air) television, cable television, scheduledpay-per-view (PPV) television, and scheduled Internet television.

Metadata—See content metadata.

Radio Content—Media (including, but not limited to, audio, text, andapplications) intended to be consumed via a radio.

Smartphones—Mobile phones capable of displaying video content.

Streaming Media (noun)—Media that is constantly delivered by a contentprovider while being received by a user. Examples of streaming mediainclude broadcast television, broadcast radio, Internet television, andInternet radio.

Streaming (verb)—Delivering media in the manner describe in “streamingmedia” definition.

Television Content—Media (including, but not limited to, audio, video,text, and applications) intended to be consumed via a television.

Television Network (or TV Network)—A telecommunications network fordistribution of television content. Used also to refer to the namedentities (such as ABC, CBS, and NBC) that run these telecommunicationsnetworks.

video content—Media that includes a video component.

2.0. Operation

In the following detailed description of the invention, reference ismade to the accompanying drawings which form a part hereof, and in whichare shown, by way of illustration, specific embodiments in which theinvention may be practiced. It is to be understood that otherembodiments may be used, and structural changes may be made withoutdeparting from the scope of the present invention.

Referring to FIGS. 1 & 2, platform server 100 collects into a databaseavailable content information from disparate content sources and/orcontent providers 110. Metadata regarding available content may beentered manually, requested via API access to content providers 110, orscraped through automated programs, or spiders, regularly crawling 200public listings from each content provider. Listings are typicallyexposed in HTML or XML formats which are easily accessed and parsed.Content providers 110 can include any content provider which listsavailable content, including free content providers such as YouTube andvarious television network websites, subscription content providers suchas Netflix, Hulu Plus, and Xfinity, and pay-per-content (PPC) contentproviders such as Amazon and iTunes. Any new content provider may beintegrated into the listings, as the only requirement is that theavailable content be listed in an accessible manner. Users may selectwhich content providers are visible to the user by default, and thus mayadd or remove any content providers or content sources indexed by theplatform server. In addition to content providers with stored content,live content may be included. This includes any live web-based contentas well as live over-the-air or live over-cable broadcasts. Such datamay be accessed from online listings of linear programming, such as livetelevision guides. Additional metadata may be pulled from user devices.For example, many DVRs and other devices have APIs allowing access 202to content listings. By networked access to such API or networked accessto a computer connected to such DVR or other device, the platform servermay access 205 linear programming metadata and other available contentmetadata, such as video-on-demand listings, which are not availablethrough online websites. Platform server 100 may store available contentmetadata, preferably in a manner that can rapidly sort and searchthousands of data points such as within a database. Platform server 100may categorize 212 each content item for sorting through variouslistings—title, series, content provider, possible playback platforms,geographical regions, etc. Any information about the content or thecontent provider may be used to identify other means of identifying andsorting the content. Multiple entries for the same content, such asmultiple disparate sources providing metadata about the same episode,may be identified 214 as matches such that a single listing may bedisplayed for the matched content identifying all available sources.Multiple entries for related content, such as different episodes withinthe same series, may be cross-correlated 216 for ease of access torelated content. Once platform server 100 has built 210 or collecteddata points for available content from content providers, it can present220 this information to users in a manner most beneficial to the user.

Users consume content on devices 120. Devices may include traditionaltelevisions, Internet-enabled televisions, mobile devices (e.g. phones,smartphones, iPods or Atrix), hand-held computers (e.g. iPods or Xoom),or traditional computer or laptop devices. Other devices will likely bedeveloped which can serve as consumption points, with the main needbeing ability to access video and a display capability. To operate withplatform server 100, the consumption device must be networked to orreceive video from a device networked to platform server 100. Suchnetwork connection most commonly may be over the Internet.

Users may receive, sort 230, and select content listings throughplatform server 100. Once content is selected, it may be streamed ordelivered 260 from content provider 110 to display or consumption device120.

Users may access platform server 100 to view all available content. Auser interface is preferably provided fully in HTML without reliance onplugin technology, such as Flash, or hardware specific programs, inorder to provide a cross-device interface. Thus access may be throughweb browsers on computers, Internet-enabled televisions, playbackdevices such as Internet connected DVR's, playback devices, or videogame hardware platforms, or mobile devices such as phones. No downloador special software is needed beyond the web browser. An account may beset up to automatically configure some filtering of content. Although amain purpose is to merge and present content from all content providers,if a user has no access to paid content seeing such content displayedmay be undesirable. FIG. 3 shows a sample interface where a user mayconfigure an account to exclude 240 selected paid content providers.Global settings may be configured for which content providers and typeof content to display by default. Individual content providers may beenabled or disabled, whether they are free or paid content providers. Inaddition, some content providers have multiple types, such as both freeand paid, multiple formats of content, and multiple subscriptionpackages, all of which may be enabled or disabled for default display.In addition to enabling/disabling specific listings, the form of displaymay be adjusted. For example, instead of disabling 242 content to whichthe user lacks access, such content may be displayed 244 in a grayed outfashion to allow browsing the content while indicating it is notavailable to the user. In accessing content, different presentationformats may be desired by different users. FIG. 4 shows a sample entryinterface allowing search along with links to browsing, listing seriesof content, content categorized as movies, along with other features.FIG. 5 shows a sample user interface for browsing content. Featured,suggested, or recommended content may be displayed, along withcategories for type of content, as well as content from specific contentproviders. While a purpose is to merge content metadata from multiplecontent providers into a single content listings, as users may desirecontent from a specific content provider such sorting is also available.Additional categories may be configured for browsing choice, such as bydevice, language, or other criteria configurable by the user. FIG. 6shows a sample user interface listing available content categorizedwithin series. Further selection can be made by browsing availablelistings, sorting be various content headers, filtering by name, orfurther reducing by selecting content provider or viewing device.Restriction by content provider may be desirable to selectively movebetween paid or free content, and selection of device may be desirableto limit displayed choices to those that will be able to be viewed. Suchrestrictions and selections may also be configured globally to apply asthe default display. FIG. 7 shows a sample user interface for atelevision series. In this case, the series is listing seasons that areavailable and individual episodes within each season. Different episodesare available from different content providers—some episodes being free,some having a cost, and some available from multiple content providers.Again, further restriction is possible by content provider or device tofurther tailor display of available content. Selections within anindividual episode include begin play, save to a personal or devicequeue, mark as a favorite, or other actions desirable within a user'saccount.

Because the interface is designed for compatibility with all devices,direct play options are available within the interface to start playbackif playback is possible on the current device. Yet not all content isavailable on all devices. Some content playback requires supportedplayback plugins such as Flash. Other content playback requiressupported video codecs or decoders which are not available on alldevices. Other content playback may be limited to a specific playbackdevice due to digital rights management restrictions. Thus users maywant to limit 240 the displayed content to content playable on thecurrent device or to a set of devices. Such settings may be madeglobally for default behavior or individually adjusted during individualaccess sessions. Yet in many situations, users may want to browsecontent available on a specific but different device. For example, whilewatching content on one television browsing next content may be desiredon an alternate device without interrupting or altering the currentplayback. Additionally, remote browsing such as selecting content whileaway from home to be viewed after returning home may also need to selectcontent playable on another device. For this reason, it is desirable todisplay all available content, a selected subset of all availablecontent, or allow limiting display to only content or a subset ofcontent accessible from the current or another specific individualdevice. Again, disabled content may be configured to be fully removedfrom presentation or to appear grayed out to indicate the differencewith available, accessible, or selected content. Configuration fordevices may be done within user account settings. Playback for aspecific device may be automatically triggered from another device ifthe playback device is operating a program or has access set up to allowcontrol from other devices. Such control could be wifi communication 250from a mobile phone which replaces need for a traditional televisionremote control. Alternatively, queues may be configured such that thedisplaying device may access the next content in the queue and move tothat content automatically or upon manual selection after the currentcontent playback ends.

In addition to access to content from traditional and Internet contentproviders, users may configure access to private or local content. Forexample, this may include content stored on a DVR, DVD or other playbackdevice including video cameras, or content stored on computers,computing devices, or networked devices such as cloud storage.Information about such content may be input by the user, or included indescriptors already associated with the content. Information may bestored in the platform server, or stored locally on users devices. Localstorage of the local content information means that access to the localstorage device may be needed to access the content information. Playbackmay be limited to the local device on which the local content is stored,or available on multiple devices if streaming/distribution of the localcontent is available from where it is stored. For example, an unencodedvideo file stored on a computer may be playable on any accessing deviceable to connect to the computer and access the file. In contrast, videostored on a local DVR might be limited to playback on television devicesconnected to that DVR.

FIG. 8 shows a browse interface with additional buttons to access livecontent and local content. Both live and local content may be indexedlike other content based on content metadata about shows or broadcasts.FIG. 9 shows the results of a search for specific content. Controls areadded to filter results to one or more of “web” content which includesan content coming over an Internet feed, “on air” content which includestraditional television feeds such as antenna, cable or satellite, and“local” content. FIG. 10 shows selection of a specific series with afilter opened for selection between “Free for me” and “Everything”content. With “Everything” selected, applicable content from any contentprovider feed will be displayed. With “Free for me” displayed, availablecontent will only include from free content provider feeds or paidcontent provider feeds to which the user has already subscribed. FIG. 11shows selection of a specific device filter. FIG. 12 shows the resultsafter selection of a specific device, in this case no playable contenton iOS devices. FIG. 13 shows selection of a different device, in thiscase resulting in available content for play on MAC computers. FIG. 14shows selection of a specific episode with playable content. Web contentis ordered by price, with the lowest cost option (free) coming first. OnAir listings follow with time of next showing and ability to configure areminder about the show or set up a recording. Web content and on-aircontent that is actively playing may include links to go directly to aplayback view of the content or to control a specific viewing device.FIG. 15 shows that any content may also be listed and accessed through auser configured Favorites section. FIG. 16 shows browsing to a specificcategory, in this case Kids. Featured content may be displayed, as wellas any sub-selection within the category. In this case there aredifferent genres and content providers selectable to reach further intothe category. Other listings, such as the category within a contentprovider feed, may be displayed as well if applicable. FIG. 17 shows alisting of series. Series are ordered by rank. Rank is calculated bycombining the rank or rating of a series from content provider sites andthird party review sites, such as IMDB and RottenTomatoes. Featuredselections are displayed 222 at the top above the listing. FIG. 18 showsbehavior on activation of an individual listing, such as by mouse-over.The selection may be raised or highlighted, with series specificinformation also displayed. Also visible in all listings are iconsrepresenting sources of the content. Matching the filters above, web,live, and local icons are displayed if the content is available throughsuch a source. These icons may further indicate if the content isavailable to the user, in which case the icon is in color, or availableonly through a subscription not currently accessible by the user, inwhich case the icon may be grayed out. Alternatively, or if thedisplayed list is already limited to display “Free for me” or contentonly from accessible sources, the icons may be used to representavailable devices. For example, grayed out icons may represent thecontent is available but not on the current or selected device, whileicons in color represent content is available for viewing on the currentor selected device. FIG. 19 shows searching within the listing removesall non-matches, but retains the rank ordering of the remaining results.FIG. 20 displays movies in a display similar to the series displays. Asmovies are individual, the specific movie information display mayinclude direct action options, such as “Play,” which are not includedwithin a series information display. FIG. 21 shows the same interfaceused to display live content. In a live view, a default behavior foricons may be to indicate availability of related content. For example,an icon representing the web may be present next to any content in thelive listing if that content is available on the web. Such icon may bedisplayed in color to indicate an exact content match is available onthe web, and displayed as gray if an exact match is not available butsimilar content, such as a different episode of the same series, isavailable. A similar gray/colored icon may used to indicate if exact orsimilar content is also available locally. Within the live listings,favorite or recommended content may be displayed first or at the top.Content may be ordered based on user preferences, sorted by name,content provider, content category, or ordered based on any availablerankings applicable to the content. A date and time selection interface,such as a drop-down selector with previous and next time buttons, mayselect the time displayed for live content. Further live-specificoptions include “Now Playing,” which displays content live at theselected time, “Starting Soon” which displays content starting at orwithin the next time period (30 minutes or 1 hour) of the current time.FIG. 22 shows “What's New” selected, which reduces the displayed livecontent to new episodes or new content. Being “new” content is anidentifiable element in content metadata about live video content, andis also displayed within the interface as a “new” tag on individualcontent items. Live content may also be sorted and viewed by type. FIG.23 shows selection of “Sports,” which adjusts the display to list livesports content. Other categories, such as, for example, “Episodes” or“News,” may alternatively be selected. Grouping by such categories evenwithin full listings may be enabled for more useful sorting of the fulllistings. FIG. 24 shows Local content, which in this example is contentrecorded on a TiVo. FIG. 25 shows an alternate interface to the samecontent, reconfigured into a format designed for television screens.Such interface may function on computers via mouse control, or be easilyadapted to television display and control through a remote control withright/left/up/down movement of selectable items. FIG. 26 shows an inputbox in such interface, with keyboard displayed selectable through astandard TV remote control.

To present content from multiple sources to users in a seamless,unified, fashion, inconsistent metadata must also be correlated. Suchcorrelation is done by software on the server with input and controlsfrom system administrators with access to a server user interface. Asdata is acquired by the server, be it through input, API calls, orscraping available web information, the data is normalized automaticallyby server software to correct common abnormalities. For example, romannumerals are converted to decimal notation, punctuation is removed,whitespace is added or deleted for consistency, and common notationssuch as “(unrated)” are removed. Both the normalized and original datais stored in the database. After normalization, a variation softwareprocess is run to create multiple variations that could be used toidentify the same content, such as phonetic pronunciation of the titleto account for misspellings, stemmed versions of the title to correctpluralization problems, letter-pattern variations to account for simpletypos, or other possible signatures if available. The multiplevariations are similarly stored in the database, allowing efficientgeneration of a list of possible matches for any item in the system.

Once a list is created of possible matches for an item, each possibilityIs analyzed using multiple metadata heuristic software to develop acertainty. For example, a movie can be compared based on title, releaseyear, air-date, description, and rating. For each piece of metadata, acertainty level is determined. A character-for-character match on atitle is considered stronger or higher certainty level than just aphonetic match. Duration matches might be exact, off by just a fewminutes, or off by a large margin. Release years that are only one yearapart are considered stronger than those 10 years apart. Common words inthe descriptions are considered valuable information based on overalllanguage word commonality. Once certainty for each piece of metadata isassigned, an overall level of certainty is generated for the match basedon the certainty of the multiple pieces of metadata. If the title matchis strong, the release year match strong, but the duration match weak,it is likely an overall medium level certainty match. These heuristicsare optimized based on hundreds of thousands of items of input data anddata testing and standard statistical certainty optimization.

Once the certainty of a match is determined, the system must choose howto handle the match. If a match is very weak then it can be safelydiscarded by the server software, If a match is very strong then it cansafely considered a perfect match by the server software, and recordedas an exact-match correlation in the database. In some cases, however,there simply isn't enough certainty one way or another. To deal withsuch situations, human-assisted automation may be used. For eachinstance of uncertainty, the system will automatically create a task forserver administrators. Referring also to FIG. 27. These tasks may beviewed and processed quickly using a web-based server administrativeuser interface tool that presents all the data and asks simply, “Arethese two the same?”, and expects a simple “Yes” or “No” response.Minimally-trained administrators can process these tasks a rate of aboutone task every 5-15 seconds, or 240-720 tasks an hour. During days wherethe system only polls previously polled sources for changed content,typically 0-50 new tasks are generated. Importing a new mega-site (forexample, integrating a brand new movie rental site with 100,000 movies)for the very first time may generate a few thousand tasks, but even thenthe processing only takes several hours of effort to correlate allcontent. Administrator performance may be tracked, such as average timeto make a decision and percent rate at which yes/no decisions are lateroverturned. The result is fast, efficient, and accurate correlation.

In addition to tasks to identify content correlation, serveradministrators may manually edit content metadata stored in thedatabase. FIGS. 28 and 29 shows such manual editing. Controls availableto administrators include Add a New Member (create a collection), AddRelated Content, Manually Over-ride, Join with Another Member (exactmatch correlation), Break Correlation, Delete, and View the User Version(what the user sees). This allows administrator control to overridesoftware defaults, alter what is displayed to users, and correct anyincorrect correlation information. It also allows administrators tocreate groupings or relationships to show topics of interest, such ashot-news topically relevant content. FIG. 30 shows administratorcontrols to override correlation rules for specific shows or othergroups of content. FIG. 31 shows an administrator interface forconfiguration of priorities for sources of metadata. Priority determineswhich source is used for default metadata to present to users. A ‘0’priority indicates not to display metadata from that source, even if theonly source with any metadata for specific content.

3.0. Other Embodiments

In addition to content listings, control of playback through thedevice-unified interface may allow for synchronized playback of contenton multiple devices. This could be desirable for remote instruction,meetings with discussion, or chatting about the currently playingcontent. Synchronizing playback allows all viewers to ensure they are atthe same point in the content as other viewers. In addition toproductive business or education purposes, programs being currentlyviewed may be listed to be seen by the public or closed lists such asfriends lists. This allows users to check what other users are viewing,which may be useful in selecting content to consume.

In addition to restrictions based on subscriptions, paid or freecontent, device accessible formats, and user selection of contentprovider channels, further restrictions for sorting and displayingcontent may be configured. For example, geographical information may beincluded with content. Some content is geographically restricted, suchas for access only within a specific country or region. Additionally,geographical content may map directly to language of the content. Asusers and devices move location, which content they can access maychange. Integration with location-aware information, such as GPSinformation included with some mobile phones or computing devices, maybe transmitted from the device to allow accurate display ofgeographically restricted content. As with other selections, users mayconfigure the interface to display all content regardless ofgeographical restriction, display only content accessible based oncurrent region, or a display a hybrid with inaccessible content listedbut grayed out.

In another alternative embodiment, the interface and/or content listingsmay be tailored to a specific platform or access provider. For example,all subscribers to a specific cable content provider may receiveaccounts tailored to that cable content provider. Content from the cablecontent provider may be highlighted or listed above other content whenavailable. Additionally, subscriptions through the cable contentprovider may be automatically mapped to each user's account. Forexample, subscribing to HBO through a standard cable content providermay automatically update the user's account to allow access and displaylistings for online content from HBO. Accounts from users which have nosubscriptions beyond their cable content provider may be completelytailored to match their cable subscriptions by default. Platforms andaccess providers may also use the system to sell online or web-basedsubscriptions to premium content, or automatically include it as abenefit of existing subscriptions.

Business rules may be configured which apply to all users accessing theinterface through an access provider. For example, the list of availablecontent providers may be limited by a business rule, such as “displayall content providers except Amazon and Netflix.” As another example, abusiness rule may be added to modify content search results to only showcontent listings from the access provider's content if there are anymatches from the access provider or an access provider affiliate in thesearch results, or to only show content listings from all other sourcesif there are no matches from the access provider in the search results.In addition to business rules, the platform server may provide a customfeed of content listings and search results for use within an accessprovider's interface. Metadata containing multi-provider listings andresults may be delivered from the platform server to the access providerfor display in any form by the access provider. For example, a specificaccess provider may have content deals with specific sources and setpriorities accordingly to display only metadata from the specificsources. Such business rules may be altered on a content orcontent-group specific basis by administrators. Additionally, theplatform server may also deliver an interface to users with theinterface styled to match the logo and colors, or look and feel, of theaccess provider. A standard HTML or compatible thin client interface maybe provided for rendering on televisions and devices served by theaccess provider. For performance or ease of management, a separateplatform server may be configured and operated for each access provider.Platform server may be implemented as a cloud service and operated asmultiple servers within a cloud platform allowing dynamic growth andexpandability in relation to performance needs.

In another alternative embodiment, the media accessed through theplatform server is limited to video-only content. In another alternateembodiment, the media is limited to audio-only content.

In addition using user queues to automatically play content, users mayselect or create channels of content for auto-play. For example, news orweather clips available online may be played sequentially to create anews channel, with one clip playing immediately after the prior clip.FIG. 32 shows a user interface for searching and selecting clips tosequentially play.

According to an embodiment, a method of listing video content comprises:collecting, on a network-connected computer server, metadata describingavailable content listings from disparate video sources; categorizingavailable content based on the scanned metadata; merging multipleentries describing the same content into a single listing;cross-correlating related listings; and displaying, to a user of anetwork-connected device, the available listings as grouped by categoryor searched by the user without regard to original source except asconfigured by the user.

In an embodiment, the method further comprises allowing sorting thecontent listings by type of content, title, series, content provider,playback platform, geographical region, or other criteria configured bythe user. In an embodiment, collecting further comprises accessing videoon demand and/or linear programming listings. In an embodiment,accessing video on demand and/or linear programming listings comprisescommunicating with a local device, such as a digital video recorder, toretrieve linear programming and/or video on demand content listings. Inan embodiment, collecting further comprises communicating with the localdevice to retrieve listings of local content.

In an embodiment, the method further comprises sorting by selection of alive category to display linear programming content. In an embodiment,the method further comprises ordering of linear programming listings bycontent type. In an embodiment, the method further comprises displayingfavorite or recommended listings above the linear programming list. Inan embodiment, the method further comprises ordering the linearprogramming listings by ranking. In an embodiment, the method furthercomprises restricting the linear programming list displayed to contentstarting soon. In an embodiment, the method further comprisesrestricting the linear programming list displayed to new content.

In an embodiment, the method further comprises graying out listinginformation for content which is not available to the user based on usersubscriptions and access devices.

In an embodiment, the method further comprises providing a ‘free for me’selection to limit displayed listings to content which is available tothe user based on user subscriptions.

In an embodiment, the method further comprises providing icons as partof each content listing displayed to indicate if the content isavailable on the web, over live television, or through the user's localdevices. In an embodiment, the method further comprises coloring theicons to indicate that the user has access to the content, and grayingout the icon to indicate the content is not available to the user due touser subscriptions. In an embodiment, the method further comprisescoloring the icons to indicate the content is available on a selecteduser device, and graying out the icons to indicate the content is notavailable on the selected user device.

In an embodiment, the method further comprises displaying, for aselected content listing, colored icons to indicate that selectedcontent is available through the web, over live television, or throughthe user's local devices.

In an embodiment, the method further comprises displaying, for aselected content listing, grayed icons to indicate that the selectedcontent is not available but similar content is available through theweb, over live television, or through the user's local devices.

In an embodiment, the method further comprises restricting the contentlistings displayed to listings of content accessible through auser-selected list of content providers and/or content accessible on auser-selected list of devices.

In an embodiment, the method further comprises restricting the contentlistings displayed to content accessible based on geographical region.

In an embodiment, the method further comprises customizing the displayedcontent listings based on business rules of an access provider. In anembodiment, customizing further comprises restricting displayed contentlistings and/or the information in the displayed listings to informationprovided by the access provider or affiliates of the access provider. Inan embodiment, the method further comprises restricting displayedcontent listings to listings available to the user through activesubscriptions with the access provider. In an embodiment, the methodfurther comprises providing a manual override control to alter thebusiness rules on an individual content or content group basis.

In an embodiment, the method further comprises providing, afterselection of a single content listing, a play button to begin video playif the content is available to the user on a user device. In anembodiment, the method further comprises providing, after selection of asingle content listing, synchronized playback if the content isavailable to the user on multiple devices. In an embodiment, the methodfurther comprises collecting a set of content which plays sequentially,creating continuous stream of video from separate content items.

In an embodiment, merging further comprises identifying identicalcontent from multiple sources based on heuristics applied to metadata,and system administrator determination where heuristics areinconclusive.

In an embodiment, the method further comprises providing a yes/no inputinterface to system administrators for heuristically inconclusivematches. In an embodiment, the method further comprises trackingadministrator speed and accuracy in identifying matched content.

In an embodiment, the method further comprises providing anadministrator interface to alter the merged listing andcross-correlation information. In an embodiment, the administratorinterface further allows creation and dissolution of groups of relatedcontent.

It is to be understood that the above description is intended to beillustrative, and not restrictive. Many other embodiments will beapparent to those of skill in the art upon reviewing the abovedescription. The scope of the invention should, therefore, be determinedwith reference to the appended claims, along with the full scope ofequivalents to which such claims are entitled.

The invention claimed is:
 1. One or more non-transitorycomputer-readable media storing instructions that, when executed by oneor more computing devices, cause performance of: collecting, on anetwork server system, content listings from video sources, thecollecting including accessing information from at least one localdevice and from at least one content provider; merging, into a singlemerged listing, a first of the content listings from a first of thevideo sources and a second of the content listings from a second of thevideo sources that describe a same content item by: retrieving a firstset of metadata corresponding to a plurality of attributes of the firstcontent listing and a second set of metadata corresponding to theplurality of attributes of the second content listing; comparing a firstattribute of the first set of metadata with a corresponding firstattribute of the second set of metadata and a second attribute of thefirst set of metadata with a corresponding second attribute of thesecond set of metadata; determining, based on the comparison, a firstsimilarity value for the first attribute with the corresponding firstattribute and a second similarity value for the second attribute withthe corresponding second attribute; calculating an overall matchcertainty for the first content listing and the second content listingbased on combining the first similarity value and the second similarityvalue; determining whether the overall match certainty for the firstcontent listing and the second content listing exceeds a threshold; inresponse to determining that the overall match certainty exceeds thethreshold, merging the first content listing and the second contentlisting that describe the same content item into the single mergedlisting that references the same content item at the first and thesecond video sources; receiving one or more inputs identifying devices,the devices comprising at least a first device and a second device;determining, from the collected content listings, a set of availablecontent listings including the merged listing for the identifieddevices; and causing display of the available content listings on anetworked device, the networked device being other than the localdevice, the available content listings including both content from thelocal device that is not available from the content provider and contentfrom the content provider.
 2. The one or more non-transitorycomputer-readable media of claim 1, wherein the available contentlistings include the merged listing for the content item, the mergedlisting indicating that the content item is available from both thecontent provider and the local device.
 3. The one or more non-transitorycomputer-readable media of claim 1, wherein the instructions, whenexecuted by the one or more computing devices, further cause performanceof: receiving, at the networked device, input selecting the content itemfrom the available content listings; and in response to the input,causing playback of the content item on one or more of the identifieddevices, other than the networked device.
 4. The one or morenon-transitory computer-readable media of claim 1, wherein theinstructions, when executed by the one or more computing devices,further cause performance of: receiving, at the networked device, inputselecting the content item from the available content listings; and inresponse to the input, causing streaming the content item from the localdevice to at least one device other than the local device, the at leastone device being one of the one or more of the identified devices or thenetworked device.
 5. The one or more non-transitory computer-readablemedia of claim 1, wherein the instructions, when executed by the one ormore computing devices, further cause performance of: receiving, at thenetworked device, input selecting the content item from the availablecontent listings; and in response to the input, causing synchronizedplayback of the content item to the first device and the second device.6. The one or more non-transitory computer-readable media of claim 1,wherein accessing the information from the at least one local devicecomprises communicating with the local device to access video on demandand/or linear programming listings that are available through the localdevice.
 7. The one or more non-transitory computer-readable media ofclaim 1, wherein accessing the information from the at least one localdevice comprises communicating with the local device to retrievelistings of privately or locally stored content.
 8. The one or morenon-transitory computer-readable media of claim 1, wherein theinstructions, when executed by the one or more computing devices,further cause performance of: cross-correlating a first related contentlisting from the local device with a second related content listing fromthe content provider, the first related content listing and the secondrelated content listing, the available content listings showing thefirst related content listing and the second related content listing asbeing different episodes of a same content series.
 9. The one or morenon-transitory computer-readable media of claim 1, wherein the displayof the available content listings includes icons, the icons including afirst icon to indicate that the networked device has access to acorresponding first content item, and a second icon to indicate that thenetworked device does not have access to a corresponding second contentitem.
 10. The one or more non-transitory computer-readable media ofclaim 1, wherein the display of the available content listings includesicons, the icons including a first icon to indicate that the firstdevice has access to a corresponding first content item, and a secondicon to indicate that the first device does not have access to acorresponding second content item.
 11. The one or more non-transitorycomputer-readable media of claim 1, wherein comparing the firstattribute of the first set of metadata with a corresponding firstattribute of the second set of metadata and a second attribute of thefirst set of metadata with a corresponding second attribute of thesecond set of metadata further comprises: normalizing the first set ofmetadata and the second set of metadata by converting textual metadatainto a common format; and performing the comparing based on thenormalized first set of metadata and the normalized second set ofmetadata.
 12. A system comprising: a network server system, comprisingone or more computing devices configured to perform: collecting contentlistings from video sources, the collecting including accessinginformation from at least one local device and from at least one contentprovider; merging, into a single merged listing, a first of the contentlistings from a first of the video sources and a second of the contentlistings from a second of the video sources that describe a same contentitem by: retrieving a first set of metadata corresponding to a pluralityof attributes of the first content listing and a second set of metadatacorresponding to the plurality of attributes of the second contentlisting; comparing a first attribute of the first set of metadata with acorresponding first attribute of the second set of metadata and a secondattribute of the first set of metadata with a corresponding secondattribute of the second set of metadata; determining, based on thecomparison, a first similarity value for the first attribute with thecorresponding first attribute and a second similarity value for thesecond attribute with the corresponding second attribute; calculating anoverall match certainty for the first content listing and the secondcontent listing based on combining the first similarity value and thesecond similarity value; determining whether the overall match certaintyfor the first content listing and the second content listing exceeds athreshold; in response to determining that the overall match certaintyexceeds the threshold, merging the first content listing and the secondcontent listing that describe the same content item into the singlemerged listing that references the same content item at the first andthe second video sources; receiving one or more inputs identifyingdevices, the devices comprising at least a first device and a seconddevice; determining, from the collected content listings, a set ofavailable content listings for the identified devices; a networkeddevice, configured to perform: displaying the available content listingsidentified by the network server system, the networked device beingother than the local device, the available content listings includingboth content from the local device that is not available from thecontent provider and content from the content provider.
 13. The systemof claim 12, wherein the available content listings include the mergedlisting for the content item, the merged listing indicating that thecontent item is available from both the content provider and the localdevice.
 14. The system of claim 12, wherein the networked device isfurther configured to perform: receiving input selecting the contentitem from the available content listings; and in response to the input,cause playback of the content item on one or more of the identifieddevices, other than the networked device.
 15. The system of claim 12,wherein the networked device is further configured to perform: receivinginput selecting the content item from the available content listings;and in response to the input, causing streaming the content item fromthe local device to at least one device other than the local device, theat least one device being one of the one or more of the identifieddevices or the networked device.
 16. The system of claim 12, wherein thenetworked device is further configured to perform: receiving inputselecting the content item from the available content listings; and inresponse to the input, causing synchronized playback of the content itemto the first device and the second device.
 17. The system of claim 12,wherein the network server system is further configured to send theavailable content listings in a web page to the networked device,wherein the first device is a digital video recorder.
 18. The system ofclaim 12, wherein accessing the information from the at least one localdevice comprises communicating with the local device to access video ondemand and/or linear programming listings that are available through thelocal device.
 19. The system of claim 12, wherein accessing theinformation from the at least one local device comprises communicatingwith the local device to retrieve listings of privately or locallystored content.
 20. The system of claim 12, wherein the network serversystem is further configured to perform: cross-correlating a firstrelated content listing from the local device with a second relatedcontent listing from the content provider, the first related contentlisting and the second related content listing, the available contentlistings showing the first related content listing and the secondrelated content listing as being different episodes of a same contentseries.
 21. The system of claim 12, wherein the display of the availablecontent listings includes icons, the icons including a first icon toindicate that the networked device has access to a corresponding firstcontent item, and a second icon to indicate that the networked devicedoes not have access to a corresponding second content item.
 22. Thesystem of claim 12, wherein the display of the available contentlistings includes icons, the icons including a first icon to indicatethat the first device has access to a corresponding first content item,and a second icon to indicate that the first device does not have accessto a corresponding second content item.
 23. A method, comprising:collecting, on a network server system, content listings from videosources, the collecting including accessing information from at leastone local device and from at least one content provider; merging, into asingle merged listing, a first of the content listings from a first ofthe video sources and a second of the content listings from a second ofthe video sources that describe a same content item by: retrieving afirst set of metadata corresponding to a plurality of attributes of thefirst content listing and a second set of metadata corresponding to theplurality of attributes of the second content listing; comparing a firstattribute of the first set of metadata with a corresponding firstattribute of the second set of metadata and a second attribute of thefirst set of metadata with a corresponding second attribute of thesecond set of metadata; determining, based on the comparison, a firstsimilarity value for the first attribute with the corresponding firstattribute and a second similarity value for the second attribute withthe corresponding second attribute; calculating an overall matchcertainty for the first content listing and the second content listingbased on combining the first similarity value and the second similarityvalue; determining whether the overall match certainty for the firstcontent listing and the second content listing exceeds a threshold; inresponse to determining that the overall match certainty exceeds thethreshold, merging the first content listing and the second contentlisting that describe the same content item into the single mergedlisting that references the same content item at the first and thesecond video sources; receiving one or more inputs identifying devices,the devices comprising at least a first device and a second device;determining, from the collected content listings, a set of availablecontent listings for the identified devices; causing display of theavailable content listings on a networked device, the networked devicebeing other than the local device, the available content listingsincluding both content from the local device that is not available fromthe content provider and content from the content provider.
 24. Themethod of claim 23, wherein the available content listings include themerged listing for the content item, the merged listing indicating thatthe content item is available from both the content provider and thelocal device.
 25. The method of claim 23, further comprising: receiving,at the networked device, input selecting the content item from theavailable content listings; and in response to the input, causingplayback of the content item on one or more of the identified devices,other than the networked device.
 26. The method of claim 23, whereinaccessing the information from the at least one local device comprisescommunicating with the local device to access video on demand and/orlinear programming listings that are available through the local device.27. The method of claim 23, wherein accessing the information from theat least one local device comprises communicating with the local deviceto retrieve listings of privately or locally stored content.